package com.opennews.openplatform.familyexpenseapi.dto.app.error.report

import com.fasterxml.jackson.annotation.JsonIgnoreProperties
import jakarta.validation.constraints.NotBlank
import jakarta.validation.constraints.Size

@JsonIgnoreProperties(ignoreUnknown = true)
class AppErrorReportDto {
    @field:NotBlank(message = "errorMessage can't be blank")
    @field:Size(max = 1000, message = "errorMessage must be at most 1000 characters")
    lateinit var errorMessage: String

    @field:Size(max = 4000, message = "stackTrace must be at most 4000 characters")
    lateinit var stackTrace: String

    var deviceInfo: Map<String, Any?>? = null
    var systemInfo: Map<String, Any?>? = null
    var username: String? = null
}